From cebb9d12a556e9ce8013c4a7058fcd9d0fee93fb Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Wed, 16 Nov 2005 11:39:38 +0100 Subject: [PATCH] Change ISA_IO_BASE to fix_to_virt(FIX_ISAMAP_BEGIN). It used to be PAGE_OFFSET, which was unaltered from vanilla Linux 2.6.12.6 kernels and caused isa_memcpy_fromio() to not read physical memory from 0xf0000 - 0xfffff correctly. http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=393 Signed-off-by: Andrew D. Ball --- linux-2.6-xen-sparse/include/asm-xen/asm-i386/io.h | 2 +- linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/io.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/linux-2.6-xen-sparse/include/asm-xen/asm-i386/io.h b/linux-2.6-xen-sparse/include/asm-xen/asm-i386/io.h index f3e03cd0a9..afb146d561 100644 --- a/linux-2.6-xen-sparse/include/asm-xen/asm-i386/io.h +++ b/linux-2.6-xen-sparse/include/asm-xen/asm-i386/io.h @@ -228,7 +228,7 @@ static inline void memcpy_toio(volatile void __iomem *dst, const void *src, int * used as the IO-area pointer (it can be iounmapped as well, so the * analogy with PCI is quite large): */ -#define __ISA_IO_base ((char __iomem *)(PAGE_OFFSET)) +#define __ISA_IO_base ((char __iomem *)(fix_to_virt(FIX_ISAMAP_BEGIN))) #define isa_readb(a) readb(__ISA_IO_base + (a)) #define isa_readw(a) readw(__ISA_IO_base + (a)) diff --git a/linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/io.h b/linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/io.h index 3b729ec0d7..f861c89564 100644 --- a/linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/io.h +++ b/linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/io.h @@ -298,7 +298,7 @@ void memset_io(volatile void __iomem *a, int b, size_t c); * used as the IO-area pointer (it can be iounmapped as well, so the * analogy with PCI is quite large): */ -#define __ISA_IO_base ((char __iomem *)(PAGE_OFFSET)) +#define __ISA_IO_base ((char __iomem *)(fix_to_virt(FIX_ISAMAP_BEGIN))) #define isa_readb(a) readb(__ISA_IO_base + (a)) #define isa_readw(a) readw(__ISA_IO_base + (a)) -- 2.30.2